{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"https://raw.githubusercontent.com/Qiskit/qiskit-tutorials/master/images/qiskit-heading.png\" alt=\"Note: In order for images to show up in this jupyter notebook you need to select File => Trusted Notebook\" width=\"500 px\" align=\"left\">"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Grover Search for Combinatorial Problems\n",
    "\n",
    "\n",
    "The latest version of this notebook is available on https://github.com/qiskit/qiskit-tutorial.\n",
    "\n",
    "***\n",
    "### Contributors\n",
    "Giacomo Nannicini and Rudy Raymond (based on [this paper](https://arxiv.org/abs/1708.03684)) \n",
    "\n",
    "### Qiskit Package Versions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'qiskit': '0.10.3',\n",
       " 'qiskit-terra': '0.8.1',\n",
       " 'qiskit-ignis': '0.1.1',\n",
       " 'qiskit-aer': '0.2.1',\n",
       " 'qiskit-ibmq-provider': '0.2.2',\n",
       " 'qiskit-aqua': '0.5.1'}"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import qiskit\n",
    "qiskit.__qiskit_version__"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Introduction\n",
    "\n",
    "Grover search is one of the most popular algorithms used for searching a solution among many possible candidates using Quantum Computers. If there are $N$ possible solutions among which there is exactly one solution (that can be verified by some function evaluation), then Grover search can be used to find the solution with $O(\\sqrt{N})$ function evaluations. This is in contrast to classical computers that require $\\Omega(N)$ function evaluations: the Grover search is a quantum algorithm that provably can be used search the correct solutions quadratically faster than its classical counterparts.  \n",
    "\n",
    "Here, we are going to illustrate the use of Grover search to solve a combinatorial problem called [Exactly-1 3-SAT problem](https://en.wikipedia.org/wiki/Boolean_satisfiability_problem#Exactly-1_3-satisfiability). The Exactly-1 3-SAT problem is a NP-complete problem, namely, it is one of the most difficult problems that are interconnected (meaning that if we solve any one of them, we essentially can solve all of them). Unfortunately, there are many natural problems that are NP-complete, such as, the Traveling Salesman Problem (TSP), the Maximum Cut (MaxCut) and so on. Up to now, there is no classical and quantum algorithm that can efficiently solve such NP-hard problems. \n",
    "\n",
    "We begin with an example of the Exactly-1 3-SAT problem. Then, we show how to design an evaluation function which is also known as the oracle (or, blackbox) which is essential to Grover search. Finally, we show the circuit of Grover search using the oracle and present their results on simulator and real-device backends."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Exactly-1 3-SAT problem\n",
    "\n",
    "The Exactly-1 3-SAT problem is best explained with the following concrete problem. Let us consider a Boolean function $f$ with three Boolean variables $x_1, x_2, x_3$ as below.\n",
    "\n",
    "$$\n",
    "f(x_1, x_2, x_3) = (x_1 \\vee x_2 \\vee \\neg x_3) \\wedge (\\neg x_1 \\vee \\neg x_2 \\vee \\neg x_3) \\wedge (\\neg x_1 \\vee x_2 \\vee x_3) \n",
    "$$\n",
    "\n",
    "In the above function, the terms on the right-hand side equation which are inside $()$ are called clauses. Each clause has exactly three literals. Namely, the first clause has $x_1$, $x_2$ and $\\neg x_3$ as its literals. The symbol $\\neg$ is the Boolean NOT that negates (or, flips) the value of its succeeding literal. The symbols $\\vee$ and $\\wedge$ are, respectively, the Boolean OR and AND. The Boolean $f$ is satisfiable if there is an assignment of $x_1, x_2, x_3$ that evaluates to $f(x_1, x_2, x_3) = 1$ (or, $f$ evaluates to True). The Exactly-1 3-SAT problem requires us to find an assignment such that $f = 1$ (or, True) and there is *exactly* one literal that evaluates to True in every clause of $f$. \n",
    "\n",
    "A naive way to find such an assignment is by trying every possible combinations of input values of $f$. Below is the table obtained from trying all possible combinations of $x_1, x_2, x_3$. For ease of explanation, we interchangably use $0$ and False, as well as $1$ and True.  \n",
    "\n",
    "|$x_1$ | $x_2$ | $x_3$ | $f$ | Comment | \n",
    "|------|-------|-------|-----|---------|\n",
    "| 0    |  0    |  0    |  1  | Not a solution because there are three True literals in the second clause     | \n",
    "| 0    |  0    |  1    |  0  | Not a solution because $f$ is False          | \n",
    "| 0    |  1    |  0    |  1  | Not a solution because there are two True literals in the first clause        | \n",
    "| 0    |  1    |  1    |  1  | Not a solution because there are three True literals in the third clause        | \n",
    "| 1    |  0    |  0    |  0  | Not a solution because $f$ is False        | \n",
    "| 1    |  0    |  1    |  1  | **Solution**. BINGO!!       | \n",
    "| 1    |  1    |  0    |  1  | Not a soluton because there are three True literals in the first clause        | \n",
    "| 1    |  1    |  1    |  0  | Not a solution because $f$ is False        | \n",
    "\n",
    "\n",
    "From the table above, we can see that the assignment $x_1x_2x_3 = 101$ is the solution fo the Exactly-1 3-SAT problem to $f$. In general, the Boolean function $f$ can have many clauses and more Boolean variables. \n",
    "\n",
    "## A blackbox function to check the assignment of Exactly-1 3-SAT problem\n",
    "\n",
    "Here, we describe a method to construct a circuit to check the assignment of Exactly-1 3-SAT problem. The circuit can then be used as a blackbox (or, oracle) in Grover search. To design the blackbox, we do not need to know the solution to the problem in advance: it suffices to design a blackbox that checks if the assignment results in $f$ evaluates to True or False. It turns out that we can design such a blackbox efficiently (in fact, any NP-complete problem has the property that although finding the solution is difficult, checking the solution is easy). \n",
    "\n",
    "For each clause of $f$, we design a sub-circuit that outputs True if and only if there is exactly one True literal in the clause. Combining all sub-circuits for all clauses, we can then obtain the blackbox that outputs True if and only if all clauses are satisfied with exactly one True literal each.   \n",
    "\n",
    "For example, let us consider the clause $(x_1 \\vee \\neg x_2 \\vee x_3)$. It is easy to see that $y$ defined as \n",
    "\n",
    "$$\n",
    "y = x_1 \\oplus \\neg x_2 \\oplus x_3 \\oplus ( x_1 \\wedge \\neg x_2 \\wedge x_3), \n",
    "$$\n",
    "\n",
    "is True if and only if exactly one of $x_1$, $\\neg x_2$, and $x_3$ is True. Using two working qubits, $y$ can be computed by the following sub-circuit. Below, $x_1x_2x_3$ is renamed as $q_1q_2q_3$, $q_4$ is used as a working qubit, and $q_5$ is used to store the value of $y$.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:34:42.934376Z",
     "start_time": "2018-09-25T17:34:42.923743Z"
    }
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "# importing Qiskit\n",
    "from qiskit import BasicAer, IBMQ\n",
    "from qiskit import QuantumCircuit, ClassicalRegister, QuantumRegister, execute\n",
    "from qiskit.compiler import transpile\n",
    "from qiskit.tools.visualization import plot_histogram"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:32:05.667148Z",
     "start_time": "2018-09-25T17:32:03.983610Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 662.2x379.26 with 1 Axes>"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "q = QuantumRegister(6)\n",
    "qc = QuantumCircuit(q)\n",
    "qc.x(q[2])\n",
    "qc.cx(q[1], q[5])\n",
    "qc.cx(q[2], q[5])\n",
    "qc.cx(q[3], q[5])\n",
    "qc.ccx(q[1], q[2], q[4])\n",
    "qc.ccx(q[3], q[4], q[5])\n",
    "qc.ccx(q[1], q[2], q[4])\n",
    "qc.x(q[2])\n",
    "qc.draw(output='mpl')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In the sub-circuit above, the three `ccx` gates on the right are used to compute $( q_1 \\wedge \\neg q_2 \\wedge q_3)$ and write the result to $q_5$, while the three `cx` gates on the left are used to compute $q_1 \\oplus \\neg q_2 \\oplus q_3$ and write the result to $q_5$. Notice that the right-most `ccx` gate is used to reset the value of $q_4$ so that it can be reused in the succeeding sub-circuits. \n",
    "\n",
    "From the above sub-circuit, we can define a blackbox function to check the solution of the Exactly-1 3-SAT problem as follows."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:32:05.678916Z",
     "start_time": "2018-09-25T17:32:05.669852Z"
    }
   },
   "outputs": [],
   "source": [
    "def black_box_u_f(circuit, f_in, f_out, aux, n, exactly_1_3_sat_formula):\n",
    "    \"\"\"Circuit that computes the black-box function from f_in to f_out.\n",
    "\n",
    "    Create a circuit that verifies whether a given exactly-1 3-SAT\n",
    "    formula is satisfied by the input. The exactly-1 version\n",
    "    requires exactly one literal out of every clause to be satisfied.\n",
    "    \"\"\"\n",
    "    num_clauses = len(exactly_1_3_sat_formula)\n",
    "    for (k, clause) in enumerate(exactly_1_3_sat_formula):\n",
    "        # This loop ensures aux[k] is 1 if an odd number of literals\n",
    "        # are true\n",
    "        for literal in clause:\n",
    "            if literal > 0:\n",
    "                circuit.cx(f_in[literal-1], aux[k])\n",
    "            else:\n",
    "                circuit.x(f_in[-literal-1])\n",
    "                circuit.cx(f_in[-literal-1], aux[k])\n",
    "        # Flip aux[k] if all literals are true, using auxiliary qubit\n",
    "        # (ancilla) aux[num_clauses]\n",
    "        circuit.ccx(f_in[0], f_in[1], aux[num_clauses])\n",
    "        circuit.ccx(f_in[2], aux[num_clauses], aux[k])\n",
    "        # Flip back to reverse state of negative literals and ancilla\n",
    "        circuit.ccx(f_in[0], f_in[1], aux[num_clauses])\n",
    "        for literal in clause:\n",
    "            if literal < 0:\n",
    "                circuit.x(f_in[-literal-1])\n",
    "    # The formula is satisfied if and only if all auxiliary qubits\n",
    "    # except aux[num_clauses] are 1\n",
    "    if (num_clauses == 1):\n",
    "        circuit.cx(aux[0], f_out[0])\n",
    "    elif (num_clauses == 2):\n",
    "        circuit.ccx(aux[0], aux[1], f_out[0])\n",
    "    elif (num_clauses == 3):\n",
    "        circuit.ccx(aux[0], aux[1], aux[num_clauses])\n",
    "        circuit.ccx(aux[2], aux[num_clauses], f_out[0])\n",
    "        circuit.ccx(aux[0], aux[1], aux[num_clauses])\n",
    "    else:\n",
    "        raise ValueError('We only allow at most 3 clauses')\n",
    "    # Flip back any auxiliary qubits to make sure state is consistent\n",
    "    # for future executions of this routine; same loop as above.\n",
    "    for (k, clause) in enumerate(exactly_1_3_sat_formula):\n",
    "        for literal in clause:\n",
    "            if literal > 0:\n",
    "                circuit.cx(f_in[literal-1], aux[k])\n",
    "            else:\n",
    "                circuit.x(f_in[-literal-1])\n",
    "                circuit.cx(f_in[-literal-1], aux[k])\n",
    "        circuit.ccx(f_in[0], f_in[1], aux[num_clauses])\n",
    "        circuit.ccx(f_in[2], aux[num_clauses], aux[k])\n",
    "        circuit.ccx(f_in[0], f_in[1], aux[num_clauses])\n",
    "        for literal in clause:\n",
    "            if literal < 0:\n",
    "                circuit.x(f_in[-literal-1])\n",
    "# -- end function"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Inversion about the average\n",
    "\n",
    "Another important procedure in Grover search is to have an operation that perfom the *inversion-about-the-average* step, namely, it performs the following transformation:\n",
    "\n",
    "$$\n",
    "\\sum_{j=0}^{2^{n}-1} \\alpha_j |j\\rangle \\rightarrow \\sum_{j=0}^{2^{n}-1}\\left(2 \\left( \\sum_{k=0}^{k=2^{n}-1} \\frac{\\alpha_k}{2^n} \\right) - \\alpha_j  \\right) |j\\rangle \n",
    "$$\n",
    "\n",
    "The above transformation can be used to amplify the probability amplitude $\\alpha_s$ when s is the solution and $\\alpha_s$ is negative (and small), while $\\alpha_j$ for $j \\neq s$ is positive. Roughly speaking, the value of $\\alpha_s$ increases by twice the average of the amplitudes, while others are reduced. The inversion-about-the-average can be realized with the sequence of unitary matrices as below:\n",
    "\n",
    "$$\n",
    "H^{\\otimes n} \\left(2|0\\rangle \\langle 0 | - I \\right) H^{\\otimes n}\n",
    "$$\n",
    "\n",
    "The first and last $H$ are just Hadamard gates applied to each qubit. The operation in the middle requires us to design a sub-circuit that flips the probability amplitude of the component of the quantum state corresponding to the all-zero binary string. The sub-circuit can be realized by the following function, which is a multi-qubit controlled-Z which flips the probability amplitude of the component of the quantum state corresponding to the all-one binary string. Applying X gates to all qubits before and after the function realizes the sub-circuit. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:32:08.246809Z",
     "start_time": "2018-09-25T17:32:08.236159Z"
    }
   },
   "outputs": [],
   "source": [
    "def n_controlled_Z(circuit, controls, target):\n",
    "    \"\"\"Implement a Z gate with multiple controls\"\"\"\n",
    "    if (len(controls) > 2):\n",
    "        raise ValueError('The controlled Z with more than 2 ' +\n",
    "                         'controls is not implemented')\n",
    "    elif (len(controls) == 1):\n",
    "        circuit.h(target)\n",
    "        circuit.cx(controls[0], target)\n",
    "        circuit.h(target)\n",
    "    elif (len(controls) == 2):\n",
    "        circuit.h(target)\n",
    "        circuit.ccx(controls[0], controls[1], target)\n",
    "        circuit.h(target)\n",
    "# -- end function"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally, the inversion-about-the-average circuit can be realized by the following function:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:32:09.200728Z",
     "start_time": "2018-09-25T17:32:09.196905Z"
    }
   },
   "outputs": [],
   "source": [
    "def inversion_about_average(circuit, f_in, n):\n",
    "    \"\"\"Apply inversion about the average step of Grover's algorithm.\"\"\"\n",
    "    # Hadamards everywhere\n",
    "    for j in range(n):\n",
    "        circuit.h(f_in[j])\n",
    "    # D matrix: flips the sign of the state |000> only\n",
    "    for j in range(n):\n",
    "        circuit.x(f_in[j])\n",
    "    n_controlled_Z(circuit, [f_in[j] for j in range(n-1)], f_in[n-1])\n",
    "    for j in range(n):\n",
    "        circuit.x(f_in[j])\n",
    "    # Hadamards everywhere again\n",
    "    for j in range(n):\n",
    "        circuit.h(f_in[j])\n",
    "# -- end function"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here is a circuit of the inversion about the average on three qubits."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:32:11.403205Z",
     "start_time": "2018-09-25T17:32:10.138028Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 602x198.66 with 1 Axes>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "qr = QuantumRegister(3)\n",
    "qInvAvg = QuantumCircuit(qr)\n",
    "inversion_about_average(qInvAvg, qr, 3)\n",
    "qInvAvg.draw(output='mpl')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Grover Search: putting all together\n",
    "\n",
    "The complete steps of Grover search is as follow.\n",
    "\n",
    "1. Create the superposition of all possible solutions as the initial state (with working qubits initialized to zero)\n",
    "$$  \\sum_{j=0}^{2^{n}-1} \\frac{1}{2^n} |j\\rangle |0\\rangle$$\n",
    "2. Repeat for $T$ times:\n",
    "\n",
    "    Apply the blackbox function\n",
    "    \n",
    "    Apply the inversion-about-the-average function\n",
    "    \n",
    "3. Measure to obtain the solution\n",
    "\n",
    "The code for the above steps is as below:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T17:37:05.873175Z",
     "start_time": "2018-09-25T17:34:42.936448Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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h9raWg488MDtj7t3705tbW2T07Rp04ZOnTpRV1e302V/+9vfZtiwYdx22224e+sGZ/e+gG+//TZjx45l6tSpPPHEE/zgBz+goaGBvn37bt86njRpEu3bt+f000/Pi+zz5s3joYceYsKECbz88su88MIL1NTUtHr2dOXP1Gufz/L9c5OulfSjjjqKAw44IC2ZU1HR3A3p+BA3GjNmDJ/5zGcy+XRazT333MOrr77KM888w7Rp03j88cdb/X/szhdw/PjxjBo1iqKiInr27MnBBx/M9OnTd5h38uTJ9OrVKy1NPunI/s477zBo0CDat29PmzZtGDx4MOPGjWv17OnKnyidr30+y/fPTTpX0jNJRXM3pOvHY/ny5bz44otceOGFac1fWlrK8uXLtz9esWIFpaWlTU6zdetWPvroI4qLi5tdbvfu3QHo2LEjo0ePZsaMGa2cfPe+gHHmHTt2LGeddVar505X9oqKCl577TXq6urYsGEDL7744g7vba7nT5TO1z6f5fvnZk+horkb0vXjce2113LDDTewzz7pfXuOOOIIampqWLJkCfX19YwdO5aTTz55h2lOOeUUHnvsMQD++te/MnToUMysyWVu3bqV1atXA7Blyxaef/55Kioq0vck0qC+vp7nnnuOM888M9tRYisvL+e73/0uZ511Fl/60pcYMGBA2j8/6ZCPr30+y+TnJl0r6ZmWf9+qPdzzzz9PSUkJhx9+eNr/V5s2bbj11lsZPXo0xxxzDCNHjqSiooJbbrll+xbzBRdcQF1dHYMGDeLuu+/m+uuv3z7/wIEDue666/jTn/5EZWUlb7/9Nps3b2b06NEMGTKEYcOGUVpaykUXXdTq2XfnC7izeSdMmMBhhx3Gpz/96VbPnc7sF154IZMmTeKZZ56hc+fO9OnTJ6/yQ/pf+3yW75+bdKykZ4OK5m5Ix4f49ddfZ/z48QwcOJCvfe1rvPzyy3z9619P23MYMWIE//jHP5gxYwbf//73gbCle8oppwCw77778sADDzB9+nQmTJhAr169ts87a9YsampqePfdd5k7dy6HHnooHTp0YNKkSbzyyitMmzaNn/3sZxQUFLR67t35Ap588smMHTuWzZs3s2TJEmpqahg0aND2+Z566qm0Ng+mK3vj+bDLli1j3LhxjB49Oq/yQ/pf+3yW75+bdKykA1x//fVUVlay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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\"\"\"\n",
    "Grover search implemented in Qiskit.\n",
    "\n",
    "This module contains the code necessary to run Grover search on 3\n",
    "qubits, both with a simulator and with a real quantum computing\n",
    "device. This code is the companion for the paper\n",
    "\"An introduction to quantum computing, without the physics\",\n",
    "Giacomo Nannicini, https://arxiv.org/abs/1708.03684. \n",
    "\"\"\"\n",
    "\n",
    "def input_state(circuit, f_in, f_out, n):\n",
    "    \"\"\"(n+1)-qubit input state for Grover search.\"\"\"\n",
    "    for j in range(n):\n",
    "        circuit.h(f_in[j])\n",
    "    circuit.x(f_out)\n",
    "    circuit.h(f_out)\n",
    "# -- end function\n",
    "\n",
    "# Make a quantum program for the n-bit Grover search.\n",
    "n = 3\n",
    "\n",
    "# Exactly-1 3-SAT formula to be satisfied, in conjunctive\n",
    "# normal form. We represent literals with integers, positive or\n",
    "# negative, to indicate a Boolean variable or its negation.\n",
    "exactly_1_3_sat_formula = [[1, 2, -3], [-1, -2, -3], [-1, 2, 3]]\n",
    "\n",
    "# Define three quantum registers: 'f_in' is the search space (input\n",
    "# to the function f), 'f_out' is bit used for the output of function\n",
    "# f, aux are the auxiliary bits used by f to perform its\n",
    "# computation.\n",
    "f_in = QuantumRegister(n)\n",
    "f_out = QuantumRegister(1)\n",
    "aux = QuantumRegister(len(exactly_1_3_sat_formula) + 1)\n",
    "\n",
    "# Define classical register for algorithm result\n",
    "ans = ClassicalRegister(n)\n",
    "\n",
    "# Define quantum circuit with above registers\n",
    "grover = QuantumCircuit()\n",
    "grover.add_register(f_in)\n",
    "grover.add_register(f_out)\n",
    "grover.add_register(aux)\n",
    "grover.add_register(ans)\n",
    "\n",
    "input_state(grover, f_in, f_out, n)\n",
    "T = 2\n",
    "for t in range(T):\n",
    "    # Apply T full iterations\n",
    "    black_box_u_f(grover, f_in, f_out, aux, n, exactly_1_3_sat_formula)\n",
    "    inversion_about_average(grover, f_in, n)\n",
    "\n",
    "# Measure the output register in the computational basis\n",
    "for j in range(n):\n",
    "    grover.measure(f_in[j], ans[j])\n",
    "\n",
    "# Execute circuit\n",
    "backend = BasicAer.get_backend('qasm_simulator')\n",
    "job = execute([grover], backend=backend, shots=1000)\n",
    "result = job.result()\n",
    "\n",
    "# Get counts and plot histogram\n",
    "counts = result.get_counts(grover)\n",
    "plot_histogram(counts)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Running the circuit in real devices\n",
    "\n",
    "We have seen that the simulator can find the solution to the combinatorial problem. We would like to see what happens if we use the real quantum devices that have noise and imperfect gates. \n",
    "\n",
    "However, due to the restriction on the length of strings that can be sent over the network to the real devices (there are more than sixty thousands charactes of QASM of the circuit), at the moment the above circuit cannot be run on real-device backends. We can see the compiled QASM on real-device `ibmqx5` backend as follows."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "IBMQ.load_accounts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T18:41:39.542516Z",
     "start_time": "2018-09-25T18:41:28.052236Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "gates =  {'u3': 1055, 'u2': 1146, 'cx': 556, 'u1': 21, 'barrier': 1, 'measure': 3}\n",
      "depth =  1245\n"
     ]
    }
   ],
   "source": [
    "# get ibmq_16_melbourne configuration and coupling map\n",
    "backend = IBMQ.get_backend('ibmq_16_melbourne')\n",
    "\n",
    "# compile the circuit for ibmq_16_rueschlikon\n",
    "grover_compiled = transpile(grover, backend=backend, seed_transpiler=1, optimization_level=3)\n",
    "\n",
    "print('gates = ', grover_compiled.count_ops())\n",
    "print('depth = ', grover_compiled.depth())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The number of gates is in the order of thousands which is above the limits of decoherence time of the current near-term quantum computers. It is a challenge to design a quantum circuit for Grover search to solve large optimization problems. \n",
    "\n",
    "### Future Work\n",
    "\n",
    "In addition to using too many gates, the circuit in this notebook uses auxiliary qubits. It is left as future work to improve the efficiency of the circuit as to make it possible to run it in the real devices. Below is the original circuit. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2018-09-25T18:42:03.016728Z",
     "start_time": "2018-09-25T18:41:52.288291Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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Q4cORu2/pqYGn332GZKTk1FSUoLCwkL4+/vjySefxMyZM432VDtdTL0vVFdX4+OPP8ZHH32E8+fP49SpUwgMDMS4ceMwffp0uLi4mCxLHR4PyBTbQGhoKAAgJyenwdcaml6HRT4RNYvUf9Ck7t9cMhCZA6n3Ban7N5cMJC1zL/Jbf4cQERERERGZFRb5REREREQWhkU+EREREZGFYZFPRERERGRhWOQTEREREVkYFvlERERERBaGRT4RERERkYVhkU9EREREZGFY5BMRERERWRgW+UREREREFoZFPhERERGRhWGRT0RERERkYVjkExERERFZGBb5REREREQWhkU+EREREZGFYZFPRERERNQEtVqNr776ChMmTECfPn1gZWWFBx54ANOmTUNeXp7U8ephkU9EREREpMOXX36Jv/71r3jsscdw4MABBAQEQKVSoW/fvkhPT8dDDz2EoKAgFBQUSB1Vw6yL/M2bNyM0NFSvZQIDA7F3717jBCIiIiKiduWTTz7BE088ASsrK6SkpKC0tBSffPIJAODzzz/H+fPn8d577+H8+fMYPHgwvv32W4kT39XiIl+tViM4OBgymQylpaWGzNQolUqF6OhoODs7w87ODuPHj8eVK1e05gkPD0dmZqZJ8hARERGR5fr2228xZcoUBAcH4/vvv8ezzz4La2trrXkUCgXmzJmDH374AW5ubnjyySdx6tQpiRL/T4uL/HfffRc2NjaGzNKk+Ph4ZGRkIDc3V/PBYsqUKVrzsMgnIiIiIkOIi4tD9+7dsWPHDigUCp3z9ujRA7t378bNmzeRmJhoooSN01nk29raYvjw4ViwYAEmTpyomf77779jzZo1Jv8HbNiwATExMfDy8oK9vT2WLVuGrKwsFBcXa+bx8/ODlZUVjh49atJsRERERGQ5fv31V3z99deIioqCo6Njs5bx8vLC5MmTsXXrViiVSiMn1E1nkV9VVYWwsDAkJSUhICAAwN3LdCIjI5GYmAgHB4cWdxwfHw9fX99mz19ZWYmSkhIEBgZqpnl7e0OhUNS7ySE8PBwZGRktzkZERERE7VtycjI6duyI6dOn67Xciy++iOrqanz66adGStY8Oot8mUyGGTNmQKVSaYr8pKQkuLq6YuzYsfXmP3XqFIYMGYLBgwfjkUcewZEjRxpdd2xsLI4fP97soFVVVQAAe3t7rekODg71PimNGjUKu3btava6iYiIiIj+qKioCF5eXnBxcdFruaCgIFhZWaGoqMg4wZqpQ1MzXL58GQAQEBCAwsJCrFixotHi3cHBAdu3b0e3bt3w888/Y/bs2fjmm28MEtTOzg4AcO3aNa3plZWV9a6RKi4uhoeHh0H6lclkBlkPkSWQen+Qun9zyUBkDqTeF6Tu31wykPHpep91vfbOO+/gnXfeMXqGxjRZ5KelpcHFxQWurq7YvHkzLl++jH79+gG4e+kOAPj6/j/27jw8iipv+/jdCZhIyDZhExAYwszLgEJAGQSRBEYGHCIoi4I+MhBZZHHkYXmI4sqAxgU1jCBGBcUEBQ2yGdBRCSpoRBF4kBkZVgGjISELBEhI+rx/+NKvMTt0dzWV7+e6zoVWVde5u7rr5JfT1ZVOmjt3riZNmuR6XEBAgPz9/WsdqDJhYWFq1aqVtm/frqioKEnSgQMHVFBQUO6yn7Vr12ro0KFu6dcY45b9AJc6h8Nh6flgdf++kgHwBVafC1b37ysZ4FljxozR+vXr9eOPP1ZY01b2HsjNzdVvfvMbzZs3Tw888MBFZTh/K/n09PRK11Wmyst1li9froSEBNelOrfddpv279+vHTt2aMeOHUpLS5MkffDBBxo1apTrcaWlpfrb3/6m+Pj4WjyN6o0fP15PPvmkDh48qIKCAs2aNUv9+/dXmzZtXNsUFhZq06ZNio2NdWvfAAAAqDtuuukmZWdn1/rvLy1btkySNGDAAE/EqrEqi/yMjAx1797dVeQ3aNBALVu2dLVmzZpJkpo1a6aGDRtK+nnmOy4uTrGxsVU+uccff1wdO3asVdj4+HjdfPPN6tatm1q0aKHS0lIlJyeX2eaDDz5Qly5d1KhRo1rtGwAAADjvlltuUbNmzbRw4cIaP8bpdOrFF1/Uddddp65du3owXfWqLPITExO1d+9eV5H/a23atJExRi1btnQtu/fee9WuXTtNnDixyo4feOABffvtt7UK6+/vr2eeeUbZ2dk6efKkVq1aVa6YX7t2rQYPHlyr/QIAAAC/dNlll2nixIlKS0vT0qVLa/SYhx9+WN99953uvfdeD6erXpVFfkFBgQ4fPlxpkf9r6enpSkpK0kcffaSYmBgNGTLELSFro3Xr1mXu6Q8AAABciPvvv1/9+vXT2LFj9fzzz6ukpKTC7U6fPq0ZM2Zo3rx5GjdunEaOHOnlpOVV+cXb3bt3Kzg4WJGRkTXaWUxMjIqLi90STJKioqI0evToWj3m0UcfdVv/AAAAqLvq16+vd999VyNHjtR///d/65lnntH48eN10003SZK2bt2q1NRULV26VLm5uZo8ebISExN94s5LDsNXwwHUgNV3krC6f1/JAPgCq88Fq/v3lQzwntLSUr333ntatGhRuS/i1qtXT0OGDNGkSZPUu3dvtxb41d1dp6LlrlxuSwEAAADYkL+/vwYNGqRBgwZp//792rNnjwYNGqT169era9euuuKKK6yOWA5FPgAAAFBDkZGRioyM9PlPcqr84i0AAACASw9FPgAAAGAzFPkAAACAzVDkAwAAADZDkQ8AAADYDEU+AAAAYDMU+QAAAIDNUOQDAAAANkORDwAAANgMRT4AAABgMxT5AAAAgM1Q5AMAAAA2Q5EPAAAA2AxFPgAAAGAz9awOAMB35efna+PGjTp+/Lgkac2aNerfv78CAwMtTuY9OTk5+uCDD5STkyNJSktLU79+/VS/fn2LkwHetX//fn322WfKz8+XJG3ZskU9e/aUw+GwOJn3/Otf/9IXX3yhkydPSpK2bduma6+9tk4dA1w6HMYYY3UIAL5l9+7d+sc//qHk5GSdPn26zLpGjRpp7NixmjRpkq688kqvZXI4HPLmcPX111/rH//4h9566y0VFRWVWXfFFVdo/Pjxuueee9SsWTOvZQK8zRij9957TwsXLtTGjRvLre/YsaMmTZqk0aNHq0GDBl7L5c3xwOl0atWqVVq0aJE2bdpUbn3Xrl01adIk/dd//ZcCAgK8kgl1R0xMjCQpPT29wnUVLT+Py3UAlJGcnKyuXbtq2bJlGjFihLZu3aqffvpJkvT+++/rhhtu0FNPPaVOnTpp8+bNFqf1jIULF+qPf/yjUlNTdffdd2vbtm2uY7B27Vp16dJFc+bMUVRUlL766iuL0wKeUVJSogkTJujmm2/Wrl279Oijj+pf//qX65O9V199VQEBAZo8ebJuuOEGZWZmWpzY/c6ePauRI0dq+PDhOnDggJ544gnt3bvXdQwWLVqk4uJijR07Vv369dOJEycsTgz8gvFhS5cuNdHR0bV6TNeuXc3GjRs9EwiwuRUrVhhJpk+fPub48eNl1v1yuPjPf/5j2rdvby6//HLz5ZdfeiWbt4arxYsXG0lm0KBBJj8/v9IMu3btMm3atDFhYWHm22+/9Uo2wFucTqe5++67jSTzwAMPmOLi4jLrz58LTqfTrFmzxgQFBZmOHTua3Nxcr+TzxnhQUlJihgwZYiSZJ5980pSUlFSYwel0muTkZHPZZZeZ7t27m8LCQo9nQ90RHR1daS1cXY18wTP5TqfTdS3e0aNHL/63jRooLS3VzJkz1bhxYwUHB2vo0KHKzs4us83gwYO1du1ar+QB7OT48eP661//quuvv15paWlq1KhRpdu2a9dO6enpatasmW677TaVlpZ6NNuRI0ckyeOzZAcOHNDkyZP1l7/8RampqQoJCal026uvvlrp6ekKDAzUHXfc4dVLiQBPW7VqlV599VXNnj1b8+bNq/Q7KA6HQ4MGDdLatWu1d+9ezZw506O5jDHavXu3JKm4uNijfS1ZskSrVq3S/Pnz9T//8z/y9/evcDuHw6E777xTK1as0JdffqnHHnvMo7mAmrrgIv+5557z6vV3kpSQkKA1a9YoIyPD9YvFXXfdVWYbinzgwixZskRnz55VUlJSjb5Y27RpUz399NM6dOiQ0tLSPJIpMzNTAwYMUKtWrST9fC385MmTy10j7y4vvfSS69969aq/L0Hr1q01Z84c7dy5U1u3bvVIJsAKL7zwglq3bl3jgrVv377661//qpSUFOXm5nokU3p6utq3b6+rr75aktSiRQu98sorHunLGKMXXnhBnTt31n//93/X6DG33HKLbr31Vr366qs6e/asR3IBtVLVNH9QUJDp16+fmTZtmhk2bJhr+XfffWfatm1rvvnmGyPJHDlypHafPdTQry/XadWqlXnllVdc/79v3z4jyRw6dKjM41q3bm2++uorj2QC7KikpMS0adPGxMTEVLpNRcNFcXGxad68uRkwYIDbM507d8506NDB+Pn5GUllWlxcnNv7O3PmjImIiDBDhgypdJuKjsGpU6dMSEiIueOOO9yeCbDCnj17jCSTkJBQ6TYVnQtff/21kWSef/55j2QKCAiocDxYuXKl2/vbsmWLkWReeumlSrep6Bh8+OGHRpJZtmyZ2zOhbvLY5TonT55UbGysEhMT1aVLF0k/X6YTFxenZ555RmFhYRf8y0VCQoI6depU4+3z8vL0/fff65prrnEti4yMVEhIiHbu3Flm28GDB2vNmjUXnA2oaw4ePKhD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AABs5pIp8mfNmqWOHTsqJCREzZs317hx43TixAmrYwEAAAA+55Ip8v39/ZWcnKycnBzt3LlTR48e1ejRo62O5THGGG3atEkvvPCC3n33XRUXF1sdyetKS0v1/vvv64UXXpAklZSUWJzI+0pKSrRu3TpJ0gcffCCn02lxIsAaJ0+eVEpKihYuXKjt27dbHccSeXl5WrZsmSTp22+/tTiNNY4fP64lS5ZIkv7zn/9YnMa7Tp06pcaNG+udd95xLTtz5ox69uypYcOG1amfD4cPH9ZLL72kV155RZmZmVbH8V3Gh6xYscJERkaaoKAg069fPzNt2jQzbNiwCrfdsGGDCQ4O9mie6OhoEx0dXet1F+vYsWMmKirKSHK1Zs2ama+++soj/fmiffv2md/97ndljkGbNm3Mnj17rI7mNf/7v/9rrrzyyjLHoH379ubgwYNWR0MdZsWPjdWrV5uGDRuWORf+8pe/mFOnTnk9i1WWLVtmAgMDyxyDESNGmKKiIqujec0//vEPU79+/TLHYPz48aakpMTqaG5Rk7oiISHBXH311cbpdJqSkhITGxtrYmJizNmzZy9qvxfCirHA6XSaGTNmGD8/P9d7wN/f38ydO9frWbylulq0Kj4zk//6669r+vTpSklJ0cmTJxUbG6vExER16dKlwu0/+ugjde7c2cspveO2227Trl27yizLysrSgAEDdPr0aYtSeY/T6dSgQYO0f//+Msu///573XTTTXViRv/cuXMaMGCAjh07Vmb53r17dcstt8gYY1EywLv279+v4cOHq7CwsMzytLQ0TZs2zaJU3vXNN99o9OjRKioqKrP8rbfe0iOPPGJRKu9KT0/Xvffeq3PnzpVZnpSUpGeffdaiVN43ZcoU/fjjj0pNTdX48eN19OhRrVmzRgEBAVZH84olS5bomWeeKfOpRWlpqR588EG9++67FibzTT5R5J8+fVrTpk1TUlKSunfvLofDobFjx6q0tLTCIj81NVWLFy9WYmKia9mNN96oxo0ba+7cud6M7na7du3Sli1byn3s5nQ6lZ2drdTUVIuSec8nn3yiPXv2VHgMDh8+rI0bN1qUzHvWr1+vY8eOVXgMdu7cqc8//9yiZIB3vfLKKyopKanwF9vXX39dBQUFFqTyrsWLF0tShcfgxRdfLFf42tHChQvl51e+ZHE4HFqwYIEFiawR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/N9++w1du3aFtbU1bGxsMGTIEABAeHg4pk2bhkaNGqFu3br4+uuvsWfPHqSkpEicmIiIiIhIXmRV5G/evBkDBgzA+PHjkZGRgdTUVIwePRo5OTn4+++/8cYbb+i2bdy4MaytrXH69GkJExMRERERyY+Z1AGeevDgAcaOHYtVq1ahf//+AABzc3P07NkTqampAIC6desW28fGxgYajQYAEBkZiaVLlwIA5s+fDx8fH73kuvZ3OqZ/FV7qcgClriMiIiIiqqry6s2n68oimyL/8OHDUKlUePvtt0uss7KyAgDcu3ev2PKcnBxYW1sjJycHISEhOHHiBO7fv49u3brhjz/+gIlJ1X9R0ejllxA87aMSy0/sjgaAUtcREREREVVVefXm03VlkU2Rf+fOHdja2kKlUpVYZ2Njg5dffhl//PEH3N3dAQDXrl2DRqNBq1atEB8fD7VaDXNzc5ibm8PJyQnJyclo1KhRlXPxSj4RERERSUERV/Lbtm2L69evY+fOnejTpw80Gg3i4+PRs2dPAMBHH32Er776Cj4+PqhXrx6mTZuGnj17wtXVFceOHYOtra3utWxtbZGVlaWXIp9X8omIiIhIClW5ki+bL962bNkSq1atwpQpU2BtbY1mzZrh119/1a2fPn06+vbtCw8PDzg7O6OoqAiRkZEAgHr16iE7O1u3bU5ODurVq2f090BEREREJAeyuZIPAO+//z7ef//9UteZmpoiJCQEISEhJdZ5enpixowZyM/Px4MHD3Djxg24uroaOC0RERERkTzJqsh/XjY2Npg0aRK8vb0BAN9++61evnRLRERERFQdKaLIBwA/Pz/4+flJHYOIiIiISHK83E1EREREpDAs8omIiIiIFIZFPhERERGRwrDIJyIiIiJSGBb5REREREQKwyKfiIiIiEhhWOQTERERESkMi3wiIiIiIoVhkU9EREREpDAs8omIiIiIFIZFPhERERGRwrDIJyIiIiJSGBb5REREREQKwyKfiIiIiEhhWOQTERERESkMi3wiIiIiIoVhkU9EREREpDAs8omIiIiIFIZFPhERERGRwrDIJyIiIiJSmGpT5BcVFWHq1Kmws7ODlZUVBg0ahDt37kgdi4iIiIhIdqpNkR8cHIzt27cjPj4eaWlpAICRI0dKnIqIiIiISH5kV+T/9ttv6Nq1K6ytrWFjY4MhQ4YAAMLDwzFt2jQ0atQIdevWxddff409e/YgJSVF4sRERERERPIiqyJ/8+bNGDBgwP9n787Doir7PoB/Z0DZEQSECJfS1EdN0eJB0Rxc0VfMnawe0Ag10dIEnzR7WrAFExes0MgFFdAwd8OdQEXjqXyxzHJHxSUQhUFckJn7/cPLeSMWIWbmHA7fz3XdV3m2+8uZc25+nDlzBuHh4cjLy8OlS5cQFhaGwsJCXLx4Ec8884xh2datW8PR0RHHjh2TMDERERERkfzIpsgvKSnBpEmTEB8fj1GjRsHa2hoODg4ICAhAcXExAKBJkybl1nFycoJWqwUA9O/fH25ubvjwww/Nnp2IiIiISE4spQ7wUEZGBlQqFYYNG1ZhnoODAwCgqKio3PTCwkI4OjoCABISErBv3z7D/frGcu7iVcyaF1/pdACVziMiIiIiqqvq6s2H86oimyL/+vXrcHZ2hkqlqjDPyckJLVq0wNGjR+Ht7Q0AOHfuHLRaLTp37gwA8PLyMkmuJ1s8hui3JlaY/v3OZACodB4RERERUV1VV28+nFcV2RT53bp1w/nz57F9+3YMGTIEWq0WWVlZCAgIAABMnDgR8+bNQ58+feDi4oK33noLAQEBaNWqlUlz8Uo+EREREUlBEVfyO3XqhOXLlyMyMhIvvvgiHBwcEBoaaijyZ82ahZs3b8LHxwf37t3DgAEDkJiYaPJcvJJPRERERFJQxJV8ABg3bhzGjRtX6TwLCwvExMQgJibGzKmIiIiIiOoXWRX5dREaGoqsrCzcu3cPWVlZ2L59u9SRiIiIiIgkoZgif+XKlVJHICIiIiKSBdk8J5+IiIiIiIyDRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYVjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYVjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYepNka/T6TBz5ky4ubnBwcEBo0aNwvXr16WORUREREQkO/WmyI+OjsbWrVuRlZWF3NxcAEBwcLDEqYiIiIiI5Ed2RX5mZib69esHR0dHODk5YcyYMQCA+Ph4vPXWW3jyySfRpEkTfPrpp9i1axcuXLggcWIiIiIiInmRVZG/ceNGjBgxAuHh4cjLy8OlS5cQFhaGwsJCXLx4Ec8884xh2datW8PR0RHHjh2TMDERERERkfxYSh3goZKSEkyaNAnLly/H8OHDAQDW1tYICAjApUuXAABNmjQpt46TkxO0Wi3Onj2LV155BUIICCGwePFiPPvss0bJde7iVcyaF1/pdACVziMiIiIiqqvq6s2H86oimyI/IyMDKpUKw4YNqzDPwcEBAFBUVFRuemFhoeG2ns2bN8PFxQUnTpzApEmTcPDgwTpn8vb2hre3N6Lfmlhh3t2rJwCg0nlERERERHVVXb35cF5VZFPkX79+Hc7OzlCpVBXmOTk5oUWLFjh69Ci8vb0BAOfOnYNWq0Xnzp3h4uJiWNbKygoWFhZGybR48WLMmhdf6V9P1o91AMAr+URERERkGtXVmw/nVUUlhBAmSVVLx48fR9euXbFp0yYMGTIEWq0WWVlZCAgIAAB89NFHWLNmDXbt2gUXFxe8+uqrKC4uxq5duwzb0Ol0eP755/H6669j0KBBUv0oRERERESSks0Hbzt16oTly5cjMjISjo6O+Mc//oEDBw4Y5s+aNQtDhw6Fj48PHn/8ceh0OiQmJhrmCyEQGhqKwMBAFvhERERE1KDJ5kp+XU2dOhXu7u74z3/+I3UUIiIiIiJJKaLIT09Px8CBA+Hn5wcAaNq0KTZt2iRxKiIiIiIiaSiiyCciIiIiov8nm3vyiYiIiIjIOFjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYVjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYVjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYVjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIiUhgW+URERERECsMin4iIiIhIYVjkExEREREpDIt8IiIiIiKFYZFPRERERKQwLPKJiIiIiBSGRT4RERERkcKwyCciIiIi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yclq3bq1JMntdisuLk5JSUmKiIiwOC3gXXPnztWZM2f0+OOPX9R2I0aM0OHDh7V48WKvZ3r99dc1b968Esvcbrf+9re/afny5V6f76233pIkDR8+/KK2GzFihHbu3KlPP/3U65kAK8yaNUuNGjVS9+7dL3ibK664QnFxcVqyZIl+/fVXr2d6+OGHPdfCn5Ofn6/77rtPR44c8fp8b775pm655RZ17NjxgrepVauWHnroIc2fP9+n7zIAlUVAlPxTp05pzJgxSklJUUxMjBwOh4YOHari4mJPyU9OTla9evXUq1evUtsfOnRIHTp0UGxsrGJiYnx2ZgHwle+++04NGzbULbfcclHb3X333brssss837jhTTNmzJDD4Si13Ol0+uRs4Xfffaebb75ZjRo1uqjtunXr5tkesIPvv/9enTt3VlBQ0EVt161bNxUVFXk+nOstW7duVXp6eql3y9xut06dOqUFCxZ4dT5jjL777jt17dq1zGNQRbp166b8/Hzt3LnTq5mASsnrnxD4HVasWGEiIiJKLNu1a5eRZA4ePGi2bdtmGjRoYA4ePGiMMWbnzp0lPnhbVFRkioqKjDHG/PLLL+YPf/iDV3K5XC4jicFgMBgMvw2n02l5BgaDUTlGRQLiTH52drbq1KlTYllqaqrq1q2revXqaf369crJydHNN9+sK6+8UrfeeqskqWXLlpo5c6aCgoI8ZzyOHTumli1bei2by+WSMabUcLlc5a5jMC52PPLII6pbt67cbneZ6yWVufzs2bMKDg7W008/7fVMN954Y7ln8vv27ev1+e6//37deOON5a4vbx+cu1Tg1Vdftfz3yGB4Y9SrV0+DBw8ud315z4WVK1dKktauXevVPLt3767wjPo777zj9X0QEhKiJ5988qL3QWpqqqTf3g2x+vfIYHhjVNQ3XS5XhR02IEr+TTfdpO3bt2vt2rUqLCxUamqqJk+e7LlUp1+/fvrll1+UmZmpzMxMrVixQpL06aefatCgQZKknTt3qmPHjurSpUuZl/QAgax9+/Y6dOiQ5w9fXaiPP/5YRUVFateundczJSQkyBhTYpnD4ZAxRqNGjfL6fO3bt9dPP/2kn3766aK2O/d5BF/sA8AK7dq10/Lly3XmzJmL2m7x4sW64oorLvqyv/Np1KiR+vTpU6roO51O1a5dWw8++KBX55Pk+Xsh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5ejatavi4+PVpUsXv+T5z7mr0vMxEFn9O7B6/kDI4I/5z9dFK+qhXK4DAAHm3//+t2677Ta9+OKL+sMf/qAVK1YoPz9fknTw4EG9/vrrys7O1sMPP6zBgwersLDQq/O73W6NGTNG9913n37++We9+OKL2rNnj4qKiiRJa9asUadOnTR9+nS1adNG//znP706vyRt3rxZf/jDH/T6668rNjZWn3/+uU6dOiVJ2rdvn15++WXt2LFDvXv31qhRo1RcXOz1DFZbv3692rRpozfffFPdu3fXunXrdPr0aUm/lf+//e1vyszMVNeuXfXss89aXrgABBhTyRQXF5v27dsbSWbv3r0+ncvlchmXy3XR67zN6l+T1fMHQgar50fV+R3s3bvXNGjQwNSpU8dkZGSUWPef+6C4uNi88MILRpIZPHiwcbvdXsuQmJhoJJmRI0eas2fPlpvhp59+Mk2aNDERERHmxx9/9Nr8P//8s4mKijKNGjUyWVlZ5c5fVFRkEhISjCTz5JNPem3+8/HHY3Hz5s0mNDTUXH/99eaXX34pd/6CggIzdOhQI8m88MILPs9VVgZYw+rfgdXzB0IGf8x/vi5akUp3Jn/q1KmqXr261TGAKuPEiRP67LPPlJ6e7vUzxpXFsWPHtGrVKq1bt85zNttXRo4cqby8PH322We67bbbyr2d0+nUM888owkTJmju3LlaunSpV+b/+uuvNWXKFD3++ONKTk5WcHD5H9264YYbtGbNGlWrVk1xcXFemV+Shg0bJofDoTVr1qhFixbl3i4oKEhJSUkaNWqUpk6dqi+//NJrGaxkjNGgQYMUERGhNWvWVHjd/eWXX66UlBQNHDhQzz77rL7//ns/JgUQyAKq5Kelpal58+YKDQ1V586dlZCQoL59+3rWb926VTNnzlRSUpKFKYGq4/XXX9dVV12lzp0766677lKDBg20ePFiq2P5jTFGzz//vOrVq6euXbvqzjvvVKNGjbRq1SqfzLdnzx59/PHHGjlypFq2bHlB24wfP15XX321Zs6c6ZUMM2fOVHh4uF555ZULus69cePG+utf/6qNGzdq8+bNlzz/999/ry+//FKJiYlq1qzZBW3z8ssvKzIy0mv7wGrr1q1TVlaWnn/+edWvX/+8t3c4HJo6dapCQkI0a9YsPyQEUBkETMmfO3euEhIStGDBAp04cULdu3dXcnKyWrduLem3a0Tj4uKUlJSkiIgIi9MC9peamqqEhATPteCSlJubq379+umbb76xMJn/zJgxQxMmTFBBQYFn2aFDh3Tffffpp59+8vp8KSkpMsZo+PDhF7xNcHCwhg8frs8++8zzDTy/V05OjtLS0jRo0CCFhoZe8HaDBg1S9erVvVKyZ82apWrVqumRRx654G2qV6+uIUOGaPHixTp48OAlZ7DazJkzFRERof79+1/wNlFRUXrwwQf13nvvlfqALoCqKSBK/qlTpzRmzBilpKQoJiZGDodDQ4cOVXFxsafkJycnq169eurVq1eZ9zF//ny1b99e7du31xdffOHP+IAtTZkyRU5nyUOE+f8/2Ddt2jQrIvmV2+3WlClTSp3NdrvdOnv2rGbMmOH1OdetW6d27drpmmuuuajt+vXrJ0nasGHDJc3/z3/+U4WFhZ77u1ARERHq3Lmz1q9ff0nzS7992LRTp06Kioq6qO369eunoqIiW/wDdP369erRo8dFX5rar18/nTx5Ulu2bPFRMgCVSUB8T/7atWvldrvVrVs3z7KcnBxJUuvWrbV9+3a99tpr2rRpU5nbHzt2TElJSdq4caNOnjypTp06afPmzaUKCoAL98MPP8jtdpda7na7q0SJyM/P1759+8pcZ4xRVlaW1+fMy8tTw4YNL3q7K6+8UpJ0/PjxS55f0kUX7HMZLnX+cxl+7/zSpe+DQMA+AOAVXv0I8O80Z84cc91115VY9tJLL5m6desaY4x59913zeWXX26ioqJMVFSUiYyMNJJMZGSkmTFjhlm5cqUZNWqUZ9tu3bqV+jaC38PlchlJDAaDwfDTCAoKsjyD1YN9wGAwLnRUJCBOdd90003avn271q5dq8LCQqWmpmry5MmeS3X69eunX375RZmZmcrMzPz/2LvzuKjq/X/gr5kBQfZFEoUUl8rUXFDCMAVXSi3F5Zr3XpfIJb1ZJppat820S6Yl3cQi99DURCVzwVzA1EQr9bbca+4Chij7Iigz798ffp1fyIASM3OGw+v5eJzHvc2Z4fPyM2dmXnPmzBns2LEDALB7926MGTMG2dnZ8PT0NP49T09Pkz+c8meEhoZCRCotoaGhVa4z9wLAKuPY6vi2kEHp8ZVY3nnnnSofF5s2baoX98HLL79c5Rzs3bvX7ONNmDABTk5OyMvLq9EcLFu2DMCtwzxqM/7p06cBAPPnz6/R/VBWVgZfX1889dRTtZ6DIUOGoFGjRigtLa3RHCxYsAAA8Ouvv1p8u7D0ttizZ0+0aNECer2+RuPPnj0bWq0W6enpdX4OuNj+faD0+LaQwRrjV9c3Q0NDq+2wNlHyg4KC8Nprr2Ho0KHw9/dHamoqgoODjSXfyckJ/v7+xsXX1xcA4OvrCxcXF3h7ext/bh24dfjOn/mok4j+v1deecXkd2BmzpyJoUOHKpDI+ubNm4c+ffpUunz+/Pno3bu32cebNGkSSkpKsGbNmnu+jYhgyZIlaN++PUJCQmo1fuvWrdGnTx988sknNfpxqa1btyIzMxPPP/98rcYHbs3BtWvXsGnTpnu+jcFgwNKlS9GzZ088/PDDtc6gtEmTJuH8+fM1OotTWVkZli1bhqeffhp+fn4WTEdEdYbYqObNm8vGjRvv6bq5ubnSuXNnKS0tlezsbOnYsaPo9fpaZ+CPYdnG+LaQQenxlWIwGOTw4cPyxhtvCACz/uBRTSl1HxgMBtm/f7/885//FABy5swZi4736KOPSkBAgFy7dq3SOlNzsGXLFgEgsbGxZhk/ISFBAMjSpUtNrr8zQ3FxsXTs2FFatGgh5eXltR5fr9fLAw88IO3atZPCwsK7ji8isnz5cgEg69evr/X498LS22JZWZk0btxYunXrJqWlpfc0/vvvvy8AZPfu3RbNVl0Gsi6l7wOlx7eFDNYYvzY/hqX8PWRCfn6+AJDTp0/f821Wr14t3bp1k27dusmePXvMkoMl3zbGt4UMSo9vC5SeA6XHt1aGgwcPioODgwQHB8vVq1erHT8pKUmcnJwkKChIiouLzTL+zZs3JTw8XHQ6ncnS/McMhYWFEh4eLlqtVr766iuzjC8ismPHDtHpdNKnTx/Jz8+vcnwRkU2bNom9vb307t1bbty4YbYM1bHGdvDFF18IABkyZIiUlJRUO/6KFStEo9HIkCFDzLKD617YwuOxvlP6PlB6fFvIwJL/Jxw6dEhcXV3N+jPtfwZLvm2MbwsZlB7fFig9B0qPb80MW7duFQcHB/Hz85N//etfcuXKFeP4BoNBUlNTZezYsaLT6aRDhw6SmZlp1vHz8/OlR48eAkBGjBgh+/fvNz4fA5Dc3FxZvHixtGrVSrRarSxfvtys44uIrFmzRnQ6nbRo0UI++OADycnJMY5vMBjkwIED8swzz4hGo5Fu3bpJbm6u2TNUxVrbwUcffSQajUbatGkjS5YsMb7hASB6vV52794tgwcPFgDSt29fs73Ruxe28His75S+D5Qe3xYysOTXYSz5tjG+LWRQenxboPQcKD2+tTN899130qtXLwEgDRo0kE6dOgkAadWqlQAQFxcXmTx5cqU93eZy/fp1eeWVV4xnM2vWrJk89thjAkCcnJwEgAQHB0tSUpJFxhcR2bt3r4SEhAgAadiwoXTu3FkASPPmzQWAuLu7y/Tp0yvt6bY0a24H27Ztk8DAQON9fvv/+/v7CwBp1KiR/POf/7Tapxi32cLjsb5T+j5QenxbyGDrJd8mvnhLREQVdevWDfv27cOvv/6KF154wXj+/I4dO2LJkiXIyMhAbGws3NzcLDK+o6Mj3nvvPWRkZGDlypUIDg42/jjTs88+ix9++AFHjhxB//79LTI+APTu3RuHDh3C8ePH8dxzz6Fp06YAbp2sYdmyZcjIyMCiRYvQsGFDi2VQ2qBBg/D999/jyJEj+Pvf/2488URISAji4+ORnp6Od955B/b29gonJSJboxH5v3MAUSVhYWEAgOTk5BqtMzeNRgMl7yalx7eFDEqPbwuUngOlx7eVDKQ8pbcDpce3lQz1ndL3gdLj20IGa4x/ty5aXQ/lnnwiIiIiIpVhySciIiIiUhmWfCIiIiIilWHJJyIiIiJSGZZ8IiIiIiKVYcknIiIiIlIZlnwiIiIiIpVhySciIiIiUhmWfCIiIiIilWHJJyIiIiJSGZZ8IiIiIiKVYcknIiIiIlIZlnwiIiIiIpVhySciIiIiUhmWfCIiIqI65MaNG4qOLyIV/lcJZWVlio1dV7DkExEREdm4X3/9FVOnToW3tzccHBwAAO7u7pg4cSKOHz9u8fFLSkqwYsUKBAUFwc7ODgBgZ2eHoKAgrFixAiUlJRbPcPz4cUyYMAHu7u5wdHQEAHh7e2Pq1Kn49ddfLT5+XcOST0RERGSjCgoKMGTIELRr1w5xcXEIDw/HO++8AwAYMmQI4uPjERgYiH79+uHatWsWybB+/Xr4+fnhueeew/Xr1zFr1iwAwKxZs1BSUoLnnnsOfn5+2LBhg0XGv3btGvr27YvAwECsXbsWQ4YMwbx58wAA4eHhiIuLQ7t27TBkyBAUFBRYJEOdJFSl0NBQCQ0NrfE6c1P6blJ6fFvIoPT4tkDpOVB6fFvJQMpTejtQenxbyVAf5OfnS+fOncXOzk7mzp0rWVlZxnW374OcnBxZuHChODg4yIMPPljhOubw6aefCgAJCQmRlJQUMRgMFcY3GAySkpIiISEhAkA+/fRTs45/5coVefDBB8XBwUEWLlwoOTk5xnW3M2RlZcncuXNFp9NJ586dJT8/36wZqmKNx8Hdumh16tyefIPBgJCQEGg0GqSnpysdh4iIiMgi/vrXv+Knn35CYmIiXn/9dfj4+FS6jqenJ6KiovDNN9/g0qVLGDJkiNmOld+/fz8mT56MAQMGYO/evejZsyc0Gk2F62g0GvTs2RN79+7FgAEDMHnyZCQnJ5tlfBFBREQELl26hG+++QZRUVHw9PSsdD0fHx+8/vrrSExMxE8//YS//e1vZhm/rqtzJf/DDz+Ek5OT0jGI6oXMzEzMmTMHnTp1AgAsWLAARUVFCqeyrkuXLmH69Ono0KEDACAmJgalpaUKpyIitTt+/Di2b9+OuXPnYsCAAXe9fo8ePbB48WIcPnzYbCU7OjoaTZo0wYYNG4zHwFfF0dERGzZsgK+vL6Kjo80y/v79+3H48GEsXrwYPXr0uOv1Bw4ciLlz5+Lrr7/GiRMnzJKhLrOpkr9x40a0bt0aLi4u6N+/P6KiojBixAjj+t9++w2xsbFYuHChgimJ6odLly4hMDAQ0dHROHnyJIBbx1/27Nmz3hT9//3vf+jUqRMWL16Mn376CQAwbdo0hIeH88wORGRRS5cuRcOGDfH888/f823GjBkDLy8vxMbG1nr806dPY/fu3Zg0aRJcXFzu6TYuLi6YNGkSkpKScObMmVpniI2NhZeXF8aOHXvPt3n++efRsGFDLF26tNbj13U2U/JXr16NqKgorF27FoWFhRg0aBBiYmLQuXNnALcO04mMjMTChQvh4eGhcFoi9XvzzTdx5cqVSpcfP3683jx5vvLKK8jPz6/00feBAwfw+eefK5SKiNTOYDBg7dq1GDlypMnDU6rSsGFDjBs3Dlu2bEFhYWGtMqxduxZarRbjx4+v0e0mTJgArVaLtWvX1mr8wsJCbN26FePGjbvrpwh/5OnpiZEjRyI+Ph4Gg6FWGeo6myj5JSUlmD59OuLi4hAcHAyNRoPx48dDr9cbS35MTAx8fX0RERFh8m/07dsXPj4+xm9bE1HtbNy40eQTpEajwcaNGxVIZF2lpaXYvn27yTnQarVISEhQIBUR1Qf5+fkoKSkxHiZYE4888gj0ej2uXr1aqwyXL1+Gj48PmjRpUqPbNWnSBI0aNcLly5drNX5WVhb0ev2fnoOSkpJ6f6YdjZjr2xm1sHPnTvz1r39Fbm6u8bKLFy8iICAAv//+O4qKihAWFobvv/8evr6+uHDhAlq0aIG0tDT4+/sDANLT07Fnzx6kp6fjn//8p1lyhYWFISUlxSx/i4iIiIjInKqr8TaxJz8rKwv33XdfhcvWrVuHxo0bw9fXFwcPHsTVq1fRvn17NGrUCIGBgQCADh06GI87u132zS00NBQiUmkJDQ2tcp25FwBWGcdWx7eFDEqPr8Ty1FNPQas1/RQxe/bsenEfhISEVDkHCxYsUPw+4qLMovTzgdLj20oGNS83b96ETqfDiy++WOP74M033wQA5OTk1CrDrFmzYG9vj7y8vBqNn5eXB3t7+1q/TmRnZwMA3nrrrRrPwdSpU2FnZ4fy8nKL3k/WeBxU1zdDQ0Or7bA2UfLbtm2LM2fOICUlBTdu3MC6desQHR1tPFTnL3/5C86ePYsTJ07gxIkT2LFjBwBg9+7dGDNmjJLRiVRr7ty5cHBwqFBytVotmjRpgpdeeknBZNYTHR0NnU5XYQ40Gg1atmyJCRMmKJiMiNTMzs4OERERiI+Px/Xr1+/5dnq9HitXrkSfPn1qdCy/KcOHD8fNmzcRHx9fo9t9/vnnuHnzJoYPH16r8b28vNC7d/nC/BwAACAASURBVG+sXLkSer3+nm93/fp1rF27FhEREdDpdLXKUNfZRMkPCgrCa6+9hqFDh8Lf3x+pqakIDg42lnwnJyf4+/sbF19fXwCAr6/vPX/jm4hqplOnTjh06BAGDRqEBg0aALh15oYjR44YH4Nq16NHD6SkpKBfv37Gn3GfOHEiDh8+zBMAEJFFTZ48GTk5OVi/fv0932bbtm24dOkSJk+eXOvxu3btiq5du2LJkiX3XLL1ej1iY2MRFBSELl261DrD5MmTcfHiRXz99df3fJsvvvgCOTk5ZpmDus4mjsk3JSAgAO+//36FU2jezapVq8x+TD4Ak+ebrW6duWk0Gih5Nyk9vi1kUHp8W6D0HCg9vq1kIOUpvR0oPb6tZFA7EUGXLl1w7tw5fPvtt3jkkUcqrL/zPjh79ixCQkLg6uqK//73v7C3t691hvXr12PUqFF44YUX8NFHH1X4Iaw7x799mMySJUuwfv16jBw5stbj37x5Ew8//DAKCwtx+PBhtGrVqsL6OzP89NNP6NGjB1q2bIkffvih0g93mZs1Hgd366LV9VCb2JN/p4KCAly8eNG4J/9eREZG4v3338eqVavw1FNPWTAdERERkWVpNBps3boVzs7O6NmzJxISEkzuUTcYDNixYwe6d++O8vJyfP3112Yp+ADwzDPPICoqCh9//DHGjh1b5RlzLl++jLFjx2LJkiWIiooyS8EHAHt7e3z99dcoLy9H9+7dsWPHDpNnPNPr9di0aRN69uwJZ2dnbN261eIFvy6wUzqAKT///DNcXV0rvWOrzooVKyyYiIiIiMi6mjVrhkOHDmHAgAEYPnw4mjVrhgkTJqBt27YAgPfeew/Lli3DmTNn0KJFC2zfvh1t2rQxa4b3338fLi4uePvtt/HFF18gIiICTz/9NAAgPj4eiYmJ2LJlC/R6Pd566y288cYbZh2/TZs2OHjwIAYMGICBAweidevWGD9+PB588EEAwLx58/DZZ5/h0qVLaNu2LbZv345mzZqZNUNdZbOH69gCHq5jG+PbQgalx7cFSs+B0uPbSgZSntLbgdLj20qG+uTmzZvYtm0bYmNjsXfv3grrHn/8cUyZMgVDhw6Fg4ODxTKcOXMGn376KVasWIGcnBzj5V5eXoiMjMTzzz9fo52zNVVWVoaEhATExsbi0KFDFdb16dMHU6ZMwVNPPWW2TzHuha0frsOSXw2WfNsY3xYyKD2+LVB6DpQe31YykPKU3g6UHt9WMtRXmZmZuHLlCkQEPj4+8PPzs+r4paWluHjxIgoLC+Hq6ormzZvX6BdpzSEjIwNXr16FRqMxnm5dCbZe8m3ycB0iIiIiqszX11fRM5w5OjrioYceUmx8APDz87P6m5u6yCa/eEtERERERH8eSz4RERERkcqw5BMRERERqQxLPhERERGRyrDkExERERGpDEs+EREREZHKsOQTEREREakMSz4RERERkcqw5BMRERERqQxLPhERERGRyrDkExERERGpDEs+EREREZHKsOQTEREREakMSz4RERERkcrYKR2AKtPr9di1axcOHz6MgoICAEB8fDyGDx8OR0dHhdNZR3l5Ob766it8//33KCwsBABs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66sOHTqUmr5jxw41btxYzZo1q5Q6qvuYOG3aND311FM6fvy4e9pLL72kYcOGVdov3WbvA6sciygfy4T81NRUzZgxQ2lpaSosLNTgwYOVlJSkLl26lLn8hg0b1Llz50qusnpYsGCBTp8+XepsaUlJiQzD0NNPP21iZZXrmmuu0axZszR+/Hht3LhR69atU0BAgNllVRvr16/X5s2by3zzXLRokQoKCkyoqnK9/fbb+vLLL0ttgwv/njdvnk6fPm1WaZVm+fLl+u6770qNRxe2wZNPPlktLl/KysrSddddpzp16pSavmPHjko9c1qdx8RDhw7p5ZdfLnPehx9+qG3btlVKHWbvA6sciygfS4T806dPa/r06UpJSVFERIQcDocmTJig4uLiMkP+6tWrtXjxYiUlJbmn9e/fX40aNapWIdRbNm7cWGawKikpUUZGhgkVmevUqVOaPXu2GjdubHYp1crHH398yXlnzpxRVlZWJVZjjk2bNl3yT/Aul0s7d+6s5Ioq36ZNm+Tr61vmvLy8POXk5FRuQSbIyspSdna2GjZsWKrNnz9f3bt3r/R6quOYuHXr1steJrhp06ZKrMa8fWC1YxFXYFhAenq6ERgYWGpaTk6OIcnIy8srNX3lypVGUFCQ8e9//7vU9IMHDxqvv/668ac//cljdTmdTkMSzabN6XRedv//7W9/M4KCgoyYmBjjxhtvNEpKSjhmaDSa19qlxqSgoCDjmWeeMQ4ePFiqBQYGGu+++67HxiNPj4mMh547Bn7tPvD0cfBrjkWOA++2y7HEmfz8/HyFhISUmrZixQo1btxYoaGh7mmvv/66HnjgAa1du1b9+vUrtXxYWJhXanM6nTIM46LmdDovOa+qtxdeeKHMbeFwODR9+nTT6/NEczqdl93v6enpio2N1TvvvKMXX3xR+fn5euutt67qmKnqTVKl9peTk1PmWWwfHx81b95c586dM32beLt98cUXZR5jPj4+6tSpk/syOju3S9175ePjo379+plen6fapcak7OxsHT9+XAMHDlRYWJi7/fzzzzpx4sQVz56Wdzzy1phol/GwqKhIjRo1KnNMqlGjho4cOeK1Y+Bq90FF9sPlariaY9GKx0Fcwiulvlq1XS5vXumYsUTIb9++vbKzs5WRkaEzZ85oxYoVSkhIKHWpzosvvqiZM2fqgw8+UK9evUys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Zpo2bZrOnTvnlRrMtm/fPkVERCgyMlJr1qzRb3/7Wz322GMyDEMNGzbUrFmz1LRpU/3xj3+slF+4AAAVZOCSnE6n4XQ6KzzP08zeTWb3j8pz5MgR4/rrrzdq165tzJs3zzh69Kh73oXj4LvvvjOmTZtmSDJuueUW46effvJoDQkJCYYko1+/fsamTZuMkpKSUv0XFRUZb775ptGmTRujTp06xocffujR/vfv3280b97c8PPzMxYtWmQcP37cPe9CDd98840xceJEQ5Jx1113GWfPnvVoDZdSWT+Lu3fvNkJCQowGDRoYL7/8slFYWHhRDV988YUxZswYQ5Ixbtw4937yNsYjAJ4Ql/BKqa9WdaUsejlV7kx+SUmJIiMj5XA4KuWSAaC6KCkp0Z133qkDBw7oww8/1GOPPaaGDRtetFzLli21aNEiLVu2TP/+97/14IMPeqyG1atXa/bs2Ro9erQ++OAD9enTRw6Ho9QytWrV0j333KOtW7fq2muv1fDhw/Xtt996pP+ioiLdfvvt+vHHH5WRkaFp06YpMDDwouWuu+46paSkKCkpSe+8847i4uI80r8VuFwu3X777ZKkzZs3a/LkyfLz87touY4dO2r58uV68sknlZqaqnnz5lV2qQCAy6hyIX/RokWqV6+e2WUAtvPBBx9o27Zteumll9S3b98rLj9u3DjNnDlTqamp+u677666f8Mw9NRTT6ljx45atmyZatasednlGzVqpPfee09nzpzRokWLrrp/SVq1apV27dql1NRUde3a9YrLT5kyRTExMfrLX/6io0ePeqQGs6WmpionJ0erVq1Su3btLrusw+HQk08+qaFDh+r555/XqVOnKqlKAMCVWCrkr1y5Um3btpWfn5+io6M1Y8YMjRgxwj1/z549Sk5OVmJioolVAvaUnJysxo0b63e/+12515k6dap8fHy0ePHiq+5/8+bN+vLLLzVlyhTVqlWrXOs0a9ZMo0aN0t/+9je5XK6rriE5OVnXXnuthgwZUu51ZsyYoTNnzmjp0qVX3b/ZDMNQcnKyevTooT59+pRrHYfDoRkzZujHH3/UihUrvFwhAKC8LBPyU1NTNWPGDKWlpamwsFCDBw9WUlKSunTpIun8pQQxMTFKTEws88/nAH69o0eP6r333tP9999f7oAtSWFhYfrtb3+r1NTUq64hNTVVAQEBGj16dIXWe/DBB3Xy5Em9/fbbV9V/dna2tmzZogceeEA+PuUfGtu3by+n0+mRbWC2rKwsff3115o8eXKF1ouMjFTHjh1tsQ0AwC4sEfJPnz6t6dOnKyUlRREREXI4HJowYYKKi4vdIT8pKUmhoaEaOnToRevv3btXffv2VZ8+fdS7d2999tlnlf0tAFVaXl6eDMNw/7xVRHh4uI4cOaKzZ89eVQ25ubm67rrr3I/LrEj/F9a/2v4l/eptYId7hH7tNnA4HLbZBgBgGx6+CfhXSU9PNwIDA0tNy8nJMSQZeXl5xrfffms0bdrUyMvLMwzj/NM9JBkHDx40DMMwjh07Zhw7dswwDMPYtWuX0bt3b4/U5XQ6DUk0Go1Go9FoNJrl2uVY4kx+fn6+QkJCSk1bsWKFGjdurNDQUH3yySc6evSoOnTooIYNG7pviOvUqZOSk5MVHBys4OBgSVLt2rXl6+vrsdqcTqcMw7ioOZ3OS87zdJNUKf1YtX+a91tOTo6k8ze2V/Q4mDhxourVq3fVNYwcOVJNmjRRcXFxhfrPzs6WJP35z3++qv4///xzSecvG6roNhg+fLjCwsK8vp+8/bO4fv16SdLatWsrXEO/fv3UqVOnKr8NaDRa9WhxCa+U+mrVdrm86XQ6L5thLRHy27dvr+zsbGVkZOjMmTNasWKFEhIS3H8yvueee7R3715t375d27dvV3p6uiTpww8/1NixY92vU1xcrClTpmj27NmmfB9AVdW8eXN16dJFS5culWEY5V7v5MmTevPNN8u8jK6ihg4dqu+//14ffPBBhdZbunSpfHx8KnSzbFk6deqkVq1aVfgG2vz8fK1du9Yj28BsvXr1UsOGDSu8Dfbu3auNGzfaYhsAgF1YIuR3795dc+bM0bBhwxQWFqbMzExFRES4Q369evUUFhbmbqGhoZKk0NBQ9/ObDcNQTEyMBg8erNtuu8207wWoihwOh2JjY/Xll1/q448/Lvd6aWlpcrlcio2Nveoahg4dqsaNG+svf/lLudf5+eeftWTJEg0ePFgtWrS4qv59fX01efJkZWRk6Msvvyz3eq+99prOnDnj0c8LMEudOnV0//33a82aNTpw4EC511u8eLF8fHw0ceJEL1YHAKgIS4R8SYqPj1dBQYHy8/OVlJSkPXv2XPLmr5YtW8owDIWFhbmnPfLII2rbtlFHYjwAACAASURBVK0t3mgBM4wePVohISEaP368Dh8+fMXlv/jiCz366KPq0aOHevbsedX916pVSw8//LDS09PLFfRLSkp0//33Kz8/X1OnTr3q/iUpJiZGAQEBGjNmjE6cOHHF5bdu3ar4+HjddtttuuGGGzxSg9kmT56sWrVqaeTIkeV67v2HH36oF154QSNHjlTTpk0roUIAQHlYJuT/ksvl0v79+8v9hIeNGzcqJSVFGzZsUFRUlIYNG+blCgH7ueaaa/TPf/5Thw8fVq9evbRt27YylyspKdGaNWsUFRUlPz8/rVq16qJPpf21Zs+erd/+9rd65JFH9OSTT+rkyZNlLvf9999rxIgRWrFihebNm6dbbrnFI/03bNhQ//jHP/TNN9+oT58+2rFjR5nLFRcX64033tCAAQPUtGlT/fWvf/VI/1bQsmVLpaWlKTMzU7fccou+/vrrMpc7c+aMlixZoiFDhqh9+/Z6+eWXK7lSAMDl1DC7gLLs3LlT/v7+atOmTbmWj4qK0pkzZ7xcFWB/ERER+uijjzRkyBD17NlTN910kyZMmOD+WXz++ef1yiuvaO/evWrXrp3S09PVrFkzj/Vfo0YNrVy5UhMmTFB8fLwWLVqkcePGKTo6WtL5D8xbuXKl3nnnHZWUlGjRokWaNm2ax/qXpFtvvVXr1q3TsGHDFB4erl69eum+++5zXw70zDPPKCUlRQcOHFDXrl317rvvqlGjRh6twWzDhg3T22+/rdGjR+uGG27QLbfcorFjx7r/evp///d/evXVV3X48GH16dNH77zzjgICAkyuGgBQioFLcjqdhtPprPA8TzN7N5ndPyrfjz/+aLz00kvGjTfeeNHjunr37m288cYbRlFRkdf6LykpMbZu3Wr8/ve/N2rVqlWq/wYNGhizZs0ysrOzvda/YRhGQUGBsXDhQqNt27YXbYP+/fsb//jHP4yzZ896tYb/Vdk/i0eOHDHmzZtnNG/evNT373A4jDvuuMN47733jHPnzlVqTYxHADwhLuGVUl+t6kpZ9HIseSYfgLkCAgIUGxurBx98UN98842OHj2qvn37at++fWrVqpXX+3c4HLr55pt18803KykpSXv37lWPHj30+eefq127dqpbt67Xa2jQoIH+8Ic/aOrUqfrqq69UUFAgp9OpAwcOePSvF1YWEhKixx57TI8++qh2796tH374QVFRUcrNzVWTJk3MLg8AcBmEfACX5HA41K5dO7Vr165Cj9b0pAYNGqhBgwam9e/j46Mbb7xRkkyrwWy+vr7q2LGj+/8EfACwPkveeAsAAADg1yPkAwAAADZDyAcAAABshpAPAAAA2AwhHwAAALAZQj4AAABgM4R8AAAAwGYI+QAAAIDNEPIBAAAAmyHkAwAAADZDyAcAAABshpAPAAAA2AwhHwAAALAZQj4AAABgMzXMLgDWlJ+fr1WrVikvL0+S9MILL2jYsGFq3ry5yZUB1cvPP/+st99+W3v27JEkJSQk6JZbblGPHj1MrqzynDp1SqtXr9a+ffskSfPnz9dtt92mzp07m1wZAFgXZ/JRyn//+1/9/ve/V7NmzfTQQw/pmWeekST94Q9/UKtWrXTXXXdp06ZNJlcJ2N/hw4cVFxensLAwjRkzRnPnzpUkPfbYY4qIiFC3bt20bNkylZSUmFuoFx04cEDTpk1T06ZNNW7cOD311FOSpNmzZys8PFy9e/fWm2++KcMwTK4UAKyHkA+3lStX6uabb9batWs1efJk7dq1S+fOnZMk7du3T7Nnz9aWLVsUFRWlpKQkk6sF7GvXrl3q0aOHFixYoKioKG3YsEFnz56VJP3www966aWX9PPPP+u+++7TmDFjVFRUZHLFnpeVlaVu3bopOTlZd9xxhz7++GP3Njh69KgWLlyoI0eOaNSoUZo8ebKKi4tNrhgArKXKhfySkhJFRkbK4XAoNzfX7HJsIz09XaNHj1aPHj20b98+JSUlqX379vLxOX+ItGrVSs8884xycnI0dOhQTZs2Ta+++qrJVQP2s3//fvXv31/nzp3TZ599plWrVumWW25RjRrnr64MCgpSbGysvvzyS82fP19vvvmmYmJibHU2+6uvvlJ0dLT8/Pz05ZdfKi0tTb1793Zvg4YNG+oPf/iDvvnmGz3++ONKSUnR1KlTbbUNAOBqVblr8hctWqR69eqZXUal2LNnj7766itJkmEYcjgcXunn559/1tixY9W5c2e9//778vPzu+Sy9erV09///nf99re/1UMPPaQhQ4YoNDTUK3UB1dEjjzyi06dPa8uWLbrxxhsvuZzD4dCjjz6qc+fOac6cORo+fLiGDRvmtboOHz6sTz/9VJJUXFwsX19fr/U1ceJE1apVSxs2bFCrVq0uuZyPj4+eeeYZFRUVacGCBbr77rsVFRXltboAoCqx1Jn8lStXqm3btvLz81N0dLRmzJihESNGuOfv2bNHycnJSkxMNLFK7/vxxx81ZMgQXX/99brrrrskSV27dtXevXu90t9bb72lgoICJSYmXjbgX1CzZk0lJSXp7Nmzeu2117xSE1Ad5eTk6N1339WUKVMuG/B/KS4uTs2bN1dycrJXajp37pymTJmisLAw3XnnnZKkFi1aKCMjwyv97dixQ5s3b1ZcXNxlA/4v/elPf1KDBg28tg0AoCqyTMhPTU3VjBkzlJaWpsLCQg0ePFhJSUnq0qWLpPOX6cTExCgxMVGBgYEmV+tdv//97/Xee++VmvbFF1+of//+7mtSPemll17S9ddfr379+pV7neuuu04DBgzQ4sWL3dftA7g6r7zyihwOhyZNmlTudXx9fTV58mRt2LBBX3/9tcdrio+P15///OdS17zn5eVp0KBBOnDggMf7S05OVt26dXXfffeVe526desqJiZGb7/9tr7//nuP1wQAVZElQv7p06c1ffp0paSkKCIiQg6HQxMmTFBxcbE75CclJSk0NFRDhw69aP0jR44oMjJSUVFRioiI0IYNGyr7W/CYPXv26N13373o2tKSkhLl5ORozZo1Hu2vuLhYmZmZuvvuuyt8OdDdd9+t3Nxc7o0APGTLli26+eab1axZswqtd/fdd0uStm7d6tF6ioqK9OKLL140vaSkRD/99JNSUlI82p90fhvceuutCgoKqtB6d999t86dO6esrCyP1wQAVZElrsnPyMhQSUmJBg0a5J529OhRSVKXLl2UnZ2tBQsW6LPPPitz/YYNG+rjjz+Wr6+v9u3bp5EjR1bZgf7CNfiXsmvXLvcbuicUFhZKkho0aFDhdYODgyWdv7wIwNVzuVwKCwur8Hre+lk8fPjwJV/T19dXu3fv9mh/0vltwHgEAB5gWMCyZcuM6667rtS0efPmGY0bNzYMwzBef/11o1atWkZwcLARHBxsBAUFGZKMoKAg46WXXiq13n/+8x8jJibGI3U5nU5DEo1Go9Eqqfn6+ppeA41Go1WVdjmWCPmffvqp4ePjY2zcuNEoKioy0tLSjICAAOO2224zDMMwTp06ZRw8eNDdtm7dakgysrKyjMLCQsMwDGPfvn1Gr169jIYNGxpr1671SF1Op9NwOp0Vnnc1SkpKjPDwcMPHx6fUTvTx8TH8/f0Nl8vl8T6vu+46o1evXpecf6mDaPTo0Ub9+vWNn376yeM1AdXRAw88YNStW9c4fvx4mfMv9bOYkpJiSDK2bNni8ZpiYmIMh8Nx0RuLw+Ewtm/f7vH+RowYYQQHB19yXLnUNkhISDAkGV9//bXHawJgP3EJr5T6alVXyqKXY4lr8rt37645c+Zo2LBhCgsLU2ZmpiIiItzX49erV09hYWHuduGRjaGhoe6nwbRq1UqffPKJMjMz9fDDD5v2vVwth8OhVatWqXnz5qWmX3PNNfrnP/8pf39/j/c5efJkbd68WTt27Cj3OkeOHNGqVat03333qU6dOh6vCaiOJk+erJ9++kmpqanlXscwDCUnJ6tz5866+eabPV7TokWL1KtXr1LTfH19lZKSos6dO3u8v8mTJ6ugoEArV64s9zrFxcVavHix+vXrp+uvv97jNQFAVWSJkC+df4JDQUGB8vPzlZSUpD179rhD/v9q2bKlDMNwX7v6y097DAgIKNdjIK2sTZs22rNnj9566y099dRTWrJkiQ4dOuS15z+PHz9edevW1RNPPFGuT400DENz587V2bNnNXnyZK/UBFRH4eHh6tmzpxYsWOC+L+lKVq1ape3btys2NtYrn6UREBCgTZs2af369YqPj9cLL7yggwcPasKECR7vS5I7qD/77LNyuVzlWmfJkiXKyclRbGysV2oCgKrIEjfe/i+Xy6X9+/dfMuT/r6ysLD3++OPy9fXV2bNnlZSU5OUKva9mzZoevcH2coKCgvTss89q2rRpmjRpkl555RX3J0v+L8Mw9OSTT2rx4sWaPn06Z80AD1u0aJGioqI0aNAgpaenKyQk5JLLpqena+zYsbr55pt17733eq0mh8OhW2+9VbfeeqvX+vhlX3/+8591++23a8iQIVqzZs1lH5v897//XQ899JCio6PdnysCALDQmfxf2rlzp/z9/dWmTZtyLd+7d29t2rRJH330kT755JNKeSOym6lTp+qPf/yjli5dqptuuklLlizR6dOn3fPPnDmjN998U3379tWf/vQnxcTE6PnnnzexYsCeIiIitHr1au3evVudO3dWfHx8qWe/G4ahTz75RGPGjNGQIUPUvn17/fOf/1TdunVNrNqzBgwYoL/97W/aunWrOnXqpPnz55f6y4ZhGFq/fr2GDx+u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\n",
      "text/plain": [
       "<Figure size 989x3581.9 with 1 Axes>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grover.draw(output='mpl', scale=0.5)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## References\n",
    "\n",
    "[1] \"[A fast quantum mechanical algorithm for database search](https://arxiv.org/abs/quant-ph/9605043)\", L. K. Grover, Proceedings of the 28th Annual ACM Symposium on the Theory of Computing (STOC 1996)\n",
    "\n",
    "[2] \"[Tight bounds on quantum searching](https://arxiv.org/abs/quant-ph/9605034)\", Boyer et al., Fortsch.Phys.46:493-506,1998"
   ]
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.2"
  },
  "latex_envs": {
   "bibliofile": "biblio.bib",
   "cite_by": "apalike",
   "current_citInitial": 1,
   "eqLabelWithNumbers": true,
   "eqNumInitial": 0
  },
  "nav_menu": {},
  "toc": {
   "navigate_menu": true,
   "number_sections": true,
   "sideBar": true,
   "threshold": 6,
   "toc_cell": false,
   "toc_section_display": "block",
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
